package com.drug.mapper;

import com.drug.domain.DrugInformation;
import com.drug.domain.Result;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
@Mapper
public interface DrugInformationMapper {
    int deleteByPrimaryKey(Integer diId);

    int insert(DrugInformation record);

    int insertSelective(DrugInformation record);

    DrugInformation selectByPrimaryKey(Integer diId);

    int updateByPrimaryKeySelective(DrugInformation record);

    int updateByPrimaryKey(DrugInformation record);




    //药品品目添加
    int insertDrugInformation(DrugInformation drugInformation);


    //药品信息添加
    int insertDrugInformation2(DrugInformation drugInformation);

    //根据id进行删除
    int deleteBydiId(Integer diId);

    /**
     * 查询药品目录
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selectConditional(DrugInformation drugInformation);
    /**
     *查询药品信息
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selectDIs(@Param("drugInformation") DrugInformation drugInformation, @Param("leftStr")String leftStr, @Param("rightStr")String rightStr);

    /**
     *查询药品信息
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selectDI(@Param("drugInformation") DrugInformation drugInformation, @Param("leftStr")String leftStr, @Param("rightStr")String rightStr);

    /**
     * 查询所有的信息
     * @return
     */
    List<DrugInformation> selectAll();

    List<DrugInformation> selectDiOne(Integer[] diId);

    /**
     * 药品品目导出
     */
    String selectNameById(Integer id);

    /**
     * 根据id回显
     */
    DrugInformation selectDiById(Integer diId);

    /**
     * 根据id回显药品信息
     */
    DrugInformation selectDrugInformationById(Integer diId);


    //修改药品品目
    int updateDrugInformation(DrugInformation drugInformation);

    //修改药品信息
    int updateDrugInformation2(DrugInformation drugInformation);

    /**
     * 根据id查询相应的信息
     * @param daId
     * @return
     */
    DrugInformation findDaOne(Integer daId);

    List<DrugInformation> selectDISdi(@Param("drugInformation")DrugInformation drugInformation, @Param("leftStr") String lefPprice,@Param("rightStr")String rightPrice);



    /**
     * 查询药品交易明细
     * @param
     * @return
     */
    List<DrugInformation> selectTransactionDetail(@Param("drugInformation")DrugInformation drugInformation,@Param("leftTime") String leftTime,@Param("rightTime") String rightTime);




    /**
     * 取消供货
     * @param diId
     * @return
     */
    Integer updateSdi(Integer diId);

    /**
     * 添加
     * @param diId
     * @return
     */
    Integer updateSdiId(Integer diId);

    int updateDif(DrugInformation drugInformation);

    Integer insetImp(DrugInformation drugInformation);

    String[] selectAllName();


    DrugInformation findDiOne(Integer diId);
	
	
    /**
     * 向采购目录添加药品(改变药品信息表里的procurement字段)
     * @param id
     * @return
     */
     int addPh(Integer id);

    /**
     * 多条件查询采购单全部信息
     * @param drugInformation
     * @param leftStr
     * @param rightStr
     * @return
     */

    List<DrugInformation> selectAllDrug2(@Param("drugInformation") DrugInformation drugInformation, @Param("leftStr")String leftStr, @Param("rightStr")String rightStr);

    /**
     * 修改信息表里的供货商
     * @param drugInformation
     * @return
     */
    int updateghs(@Param("drugInformation") DrugInformation drugInformation);

    /**
     * 多条件查询入库表
     * @param drugInformation
     * @return
     */
    List<DrugInformation>  selectPs(@Param("drugInformation") DrugInformation drugInformation);

    /**
     * 多条件查询退货商品信息
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selecttuihuo(@Param("drugInformation") DrugInformation drugInformation);

    /**
     * 多条件查询结算(采购单中间表)
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selectjs(@Param("drugInformation") DrugInformation drugInformation);

    /**
     * 按采购单查询
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selectaaa(@Param("drugInformation") DrugInformation drugInformation);



    /**
     * 根据id查询所有所有的药品品目信息
     * @param
     * @return
     */
    List<DrugInformation> selectByPrimaryKey( DrugInformation drugInformation);

    DrugInformation selectByIdName(Integer diId);

    List<DrugInformation> selectPs1();

    /**
     * 采购目录药品查询
     * @return
     */
    List<DrugInformation> selectAllDrug(@Param("drugInformation") DrugInformation drugInformation, @Param("leftStr")String leftStr, @Param("rightStr")String rightStr);


    /**
     * 采购目录维护药品查询
     * @return
     */
    List<DrugInformation> selectAllDrug1(@Param("drugInformation") DrugInformation drugInformation, @Param("leftStr")String leftStr, @Param("rightStr")String rightStr);

    /*
     * 查询采购药品目录
     * @param drugInformation
     * @return
     */
    List<DrugInformation> selectConditional1(DrugInformation drugInformation);


    /**
     * 查询用户名是否已存在
     */

    String[] diName();

    /**
     * 查询流水号是否已存在
     */
    String[] diNumer();

    Integer selectcaigoushangid(@Param("diid") Integer diid);

    Integer updateSdiMent(String s);

    void updateSdiMen(@Param("id") Integer id,@Param("str") String str);

    void updateMent(Integer integer1);

    void updateDiProcurement(Integer diid);

    /**
     * 查询所要添加的药品
     * @return
     */
    List<DrugInformation> selectyaopin();


}